package org.jeecg.modules.basesource.entity;

import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;

/**
 * @Description: 进项发票
 * @Author: jeecg-boot
 * @Date:   2022-02-28
 * @Version: V1.0
 */
@Data
@TableName("zx_zzsfp_jx")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="zx_zzsfp_jx对象", description="进项发票")
public class ZxZzsfpJx {

	/**登记序号，三证合一前有税号和社会信用代码，登记序号作为统一标识*/
	@Excel(name = "登记序号，三证合一前有税号和社会信用代码，登记序号作为统一标识", width = 15)
    @ApiModelProperty(value = "登记序号，三证合一前有税号和社会信用代码，登记序号作为统一标识")
	private String tynsrsbh;
	/**发票种类代码【01:专票(dzdz_fpxx_zzsfp) 02：普通(dzdz_fpxx_ptfp) 03:电子(dzdz_fpxx_dzfp) 04:机动车(dzdz_fpxx_jdcfp) 05:二手车(dzdz_fpxx_escfp) 06:卷式(dzdz_fpxx_jsfp) 07:通行费(dzdz_fpxx_txffp)】08:电子专票*/
	@Excel(name = "发票种类代码【01:专票(dzdz_fpxx_zzsfp) 02：普通(dzdz_fpxx_ptfp) 03:电子(dzdz_fpxx_dzfp) 04:机动车(dzdz_fpxx_jdcfp) 05:二手车(dzdz_fpxx_escfp) 06:卷式(dzdz_fpxx_jsfp) 07:通行费(dzdz_fpxx_txffp)】08:电子专票", width = 15)
    @ApiModelProperty(value = "发票种类代码【01:专票(dzdz_fpxx_zzsfp) 02：普通(dzdz_fpxx_ptfp) 03:电子(dzdz_fpxx_dzfp) 04:机动车(dzdz_fpxx_jdcfp) 05:二手车(dzdz_fpxx_escfp) 06:卷式(dzdz_fpxx_jsfp) 07:通行费(dzdz_fpxx_txffp)】08:电子专票")
	private String fpzldm;
	/**发票代码*/
	@Excel(name = "发票代码", width = 15)
    @ApiModelProperty(value = "发票代码")
	@MppMultiId
	private String fpdm;
	/**发票号码*/
	@Excel(name = "发票号码", width = 15)
    @ApiModelProperty(value = "发票号码")
	@MppMultiId
	private String fphm;
	/**购方名称*/
	@Excel(name = "购方名称", width = 15)
    @ApiModelProperty(value = "购方名称")
	private String gfmc;
	/**购方纳税人识别号*/
	@Excel(name = "购方纳税人识别号", width = 15)
    @ApiModelProperty(value = "购方纳税人识别号")
	private String gfsbh;
	/**销方名称*/
	@Excel(name = "销方名称", width = 15)
    @ApiModelProperty(value = "销方名称")
	private String xfmc;
	/**销方纳税人识别号*/
	@Excel(name = "销方纳税人识别号", width = 15)
    @ApiModelProperty(value = "销方纳税人识别号")
	private String xfsbh;
	/**合计金额*/
	@Excel(name = "合计金额", width = 15)
    @ApiModelProperty(value = "合计金额")
	private java.math.BigDecimal hjje;
	/**合计税额*/
	@Excel(name = "合计税额", width = 15)
    @ApiModelProperty(value = "合计税额")
	private java.math.BigDecimal hjse;
	/**价税合计*/
	@Excel(name = "价税合计", width = 15)
    @ApiModelProperty(value = "价税合计")
	private java.math.BigDecimal jshj;
	/**开票月份*/
	@Excel(name = "开票月份", width = 15)
    @ApiModelProperty(value = "开票月份")
	private String kpyf;
	/**开票日期*/
	@Excel(name = "开票日期", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "开票日期")
	private Date kprq;
	/**发票状态代码 0 正常 1 失控 2 作废 3 红字 4 异常票*/
	@Excel(name = "发票状态代码 0 正常 1 失控 2 作废 3 红字 4 异常票", width = 15)
    @ApiModelProperty(value = "发票状态代码 0 正常 1 失控 2 作废 3 红字 4 异常票")
	private String fpztDm;
	/**发票状态标识 0正数票；1负数票；2空白作废发票＿正数作废发票＿负数作废发票*/
	@Excel(name = "发票状态标识 0正数票；1负数票；2空白作废发票＿正数作废发票＿负数作废发票", width = 15)
    @ApiModelProperty(value = "发票状态标识 0正数票；1负数票；2空白作废发票＿正数作废发票＿负数作废发票")
	private String fpztBz;
	/**作废日期*/
	@Excel(name = "作废日期", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "作废日期")
	private Date zfrq;
	/**备注 机动车和二手车都默认'*/
	@Excel(name = "备注 机动车和二手车都默认'", width = 15)
    @ApiModelProperty(value = "备注 机动车和二手车都默认'")
	private String bz;
	/**清单标志(开放平台没有返回值则为')*/
	@Excel(name = "清单标志(开放平台没有返回值则为')", width = 15)
    @ApiModelProperty(value = "清单标志(开放平台没有返回值则为')")
	@MppMultiId
	private String qdbz;
	/**原发票代码*/
	@Excel(name = "原发票代码", width = 15)
    @ApiModelProperty(value = "原发票代码")
	private String yfpdm;
	/**原发票号码*/
	@Excel(name = "原发票号码", width = 15)
    @ApiModelProperty(value = "原发票号码")
	private String yfphm;
	/**校验码*/
	@Excel(name = "校验码", width = 15)
    @ApiModelProperty(value = "校验码")
	private String jym;
	/**购方地市税务机关代码*/
	@Excel(name = "购方地市税务机关代码", width = 15)
    @ApiModelProperty(value = "购方地市税务机关代码")
	private String gfDsswjgDm;
	/**购方区县税务机关代码*/
	@Excel(name = "购方区县税务机关代码", width = 15)
    @ApiModelProperty(value = "购方区县税务机关代码")
	private String gfQxswjgDm;
	/**购方省级税务机关代码*/
	@Excel(name = "购方省级税务机关代码", width = 15)
    @ApiModelProperty(value = "购方省级税务机关代码")
	private String gfSjswjgDm;
	/**销方地市税务机关代码*/
	@Excel(name = "销方地市税务机关代码", width = 15)
    @ApiModelProperty(value = "销方地市税务机关代码")
	private String xfDsswjgDm;
	/**销方区县税务机关代码*/
	@Excel(name = "销方区县税务机关代码", width = 15)
    @ApiModelProperty(value = "销方区县税务机关代码")
	private String xfQxswjgDm;
	/**销方省级税务机关代码*/
	@Excel(name = "销方省级税务机关代码", width = 15)
    @ApiModelProperty(value = "销方省级税务机关代码")
	private String xfSjswjgDm;
	/**异地发票标识 Y 异地 N 本地*/
	@Excel(name = "异地发票标识 Y 异地 N 本地", width = 15)
    @ApiModelProperty(value = "异地发票标识 Y 异地 N 本地")
	private String ydfpbz;
	/**代开发票真实销售方识别号*/
	@Excel(name = "代开发票真实销售方识别号", width = 15)
    @ApiModelProperty(value = "代开发票真实销售方识别号")
	private String dkXsfsbh;
	/**代开发票真实销售方名称*/
	@Excel(name = "代开发票真实销售方名称", width = 15)
    @ApiModelProperty(value = "代开发票真实销售方名称")
	private String dkXsfmc;
	/**序号*/
	@Excel(name = "序号", width = 15)
    @ApiModelProperty(value = "序号")
	@MppMultiId
	private java.math.BigDecimal xh;
	/**明细条数*/
	@Excel(name = "明细条数", width = 15)
    @ApiModelProperty(value = "明细条数")
	private java.math.BigDecimal mxts;
	/**货物或应税劳务名称-明细*/
	@Excel(name = "货物或应税劳务名称-明细", width = 15)
    @ApiModelProperty(value = "货物或应税劳务名称-明细")
	private String hwmc;
	/**商品编码*/
	@Excel(name = "商品编码", width = 15)
    @ApiModelProperty(value = "商品编码")
	private String spbm;
	/**自行编码*/
	@Excel(name = "自行编码", width = 15)
    @ApiModelProperty(value = "自行编码")
	private String zxbm;
	/**金额*/
	@Excel(name = "金额", width = 15)
    @ApiModelProperty(value = "金额")
	private java.math.BigDecimal je;
	/**含税金额*/
	@Excel(name = "含税金额", width = 15)
    @ApiModelProperty(value = "含税金额")
	private java.math.BigDecimal hsje;
	/**税额*/
	@Excel(name = "税额", width = 15)
    @ApiModelProperty(value = "税额")
	private java.math.BigDecimal se;
	/**税率*/
	@Excel(name = "税率", width = 15)
    @ApiModelProperty(value = "税率")
	private java.math.BigDecimal slv;
	/**数量*/
	@Excel(name = "数量", width = 15)
    @ApiModelProperty(value = "数量")
	private java.math.BigDecimal sl;
	/**计量单位*/
	@Excel(name = "计量单位", width = 15)
    @ApiModelProperty(value = "计量单位")
	private String jldw;
	/**单价*/
	@Excel(name = "单价", width = 15)
    @ApiModelProperty(value = "单价")
	private String dj;
	/**规格型号*/
	@Excel(name = "规格型号", width = 15)
    @ApiModelProperty(value = "规格型号")
	private String ggxh;
	/**清单标志-明细,开放平台没有返回值则为'*/
	@Excel(name = "清单标志-明细,开放平台没有返回值则为'", width = 15)
    @ApiModelProperty(value = "清单标志-明细,开放平台没有返回值则为'")
	@MppMultiId
	private String qdbzMx;
	/**购方地址电话*/
	@Excel(name = "购方地址电话", width = 15)
    @ApiModelProperty(value = "购方地址电话")
	private String gfdzdh;
	/**购方开户行及账号*/
	@Excel(name = "购方开户行及账号", width = 15)
    @ApiModelProperty(value = "购方开户行及账号")
	private String gfyhzh;
	/**销方地址电话*/
	@Excel(name = "销方地址电话", width = 15)
    @ApiModelProperty(value = "销方地址电话")
	private String xfdzdh;
	/**销方开户行及账号*/
	@Excel(name = "销方开户行及账号", width = 15)
    @ApiModelProperty(value = "销方开户行及账号")
	private String xfyhzh;
	/**作废状态（0-默认值  1-标记作废 2-已更新业务数据）*/
	@Excel(name = "作废状态（0-默认值  1-标记作废 2-已更新业务数据）", width = 15)
    @ApiModelProperty(value = "作废状态（0-默认值  1-标记作废 2-已更新业务数据）")
	private Integer zfzt;
	/**创建时间*/
	@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
	private Date createTime;
	/**修改时间*/
	@Excel(name = "修改时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
	private Date updateTime;
	/**数据生命周期开始时间*/
	@Excel(name = "数据生命周期开始时间", width = 15)
    @ApiModelProperty(value = "数据生命周期开始时间")
	private String dataStartDate;
	/**数据生命周期结束时间*/
	@Excel(name = "数据生命周期结束时间", width = 15)
    @ApiModelProperty(value = "数据生命周期结束时间")
	private String dataEndDate;
	/**区域编码*/
	@Excel(name = "区域编码", width = 15)
    @ApiModelProperty(value = "区域编码")
	private String areaCode;
}
